﻿#define _CRT_SECURE_NO_WARNINGS 1

//内联函数
//用来代替C的宏函数
//⽤inline修饰的函数叫做内联函数，编译时C++编译器会在调⽤的地⽅展开内联函数，这样调⽤内联函数就不需要建⽴栈帧了，就可以提⾼效率。
//inline对于编译器⽽⾔只是⼀个建议

//宏函数
//#include <iostream>
//using namespace std;
//
//#define Add(x,y) ((x)+(y))
//int main()
//{
//	cout << Add(5, 6) << endl;
//	return 0;
//}


#include<iostream>
using namespace std;
inline int Add(int x, int y)
{
	int ret = x + y;
	ret += 1;
	ret += 1;
	ret += 1;
	return ret;
}
int main()
{
	// 可以通过汇编观察程序是否展开
	// 有call Add语句就是没有展开，没有就是展开了
	int ret = Add(1, 2);
	cout << Add(1, 2) * 5 << endl;
	return 0;
}